home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / F-French / (c)f1.d64 / barils (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  4KB  |  123 lines

  1. 100 PRINT"[147][159]      REDEFINITION DES CHARACTERES"
  2. 110 GOTO390
  3. 120 REM L HOMME SAUTE
  4. 130 POKEE%,39
  5. 140 FOR X=1TOZ%:GOSUB250:IFPEEK(B%(X))>36ANDPEEK(B%(X))<40 THEN910
  6. 145 IF PEEK(B%(X)+D(X))>36ANDPEEK(B%(X)+D(X))<40THEN910
  7. 147 IF PEEK(B%(X)-1)>36ANDPEEK(B%(X)-1)<40THEN910
  8. 150 GOSUB310:NEXTX
  9. 160 POKEE%,37
  10. 170 POKES,P
  11. 180 P=P+3
  12. 190 POKEE%,38
  13. 200 FORX=1TOZ%:GOSUB250:IF PEEK(B%(X))>36ANDPEEK(B%(X))<40 THEN910
  14. 203 IF PEEK(B%(X)+D(X))>36ANDPEEK(B%(X)+D(X))<40THEN910
  15. 205 IF PEEK(B%(X)-1)>36ANDPEEK(B%(X)-1)<40THEN910
  16. 210 GOSUB310:NEXTX
  17. 220 IFPEEK(E%-40)=LLTHEN910
  18. 230 POKEE%,32:E%=E%-40:POKEE%,38:POKES,0:POKEE%,32:E%=E%-40:POKEE%,38:RETURN
  19. 240 REM DEPLACEMENT DES BARILS
  20. 250 POKES+1,O
  21. 260 POKEB%(X),C
  22. 270 IF PEEK(B%(X)+I%)=WTHENB%(X)=B%(X)+D(X)
  23. 280 IF PEEK(B%(X))=WTHENB%(X)=B%(X)-T%*D(X)
  24. 290 IF PEEK(B%(X)+I%)<>WTHENB%(X)=B%(X)+I%
  25. 300 RETURN
  26. 310 POKEB%(X),LL
  27. 320 IFB%(X)>JTHENGOSUB350
  28. 330 RETURN
  29. 340 REM REPLACE BARILS
  30. 350 FORX=1TOZ%:POKEB%(X),C:B%(X)=SR+INT(RND(X)*T%):NEXTX
  31. 360 REM RESULTATS
  32. 370 PRINT"TOTAL    [157][157][157][157]"SC;"         [157][157][157][157][157][157]";
  33. 380 FORQ=3TOA+1STEP-1:PRINT"[146]%";:NEXT:PRINT"":RETURN
  34. 390 POKE53281,0:POKE53280,6
  35. 400 POKE56,48:CLR
  36. 410 POKE56334,PEEK(56334)AND254:POKE1,PEEK(1)AND251
  37. 420 BL$="[158]                                        "
  38. 430 AL$="[146][156]$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
  39. 440 FORI=0TO1023:POKEI+12288,PEEK(I+53248):POKEI+13312,PEEK(I+53248):NEXT
  40. 450 POKE1,PEEK(1)OR4
  41. 460 POKE56334,PEEK(56334)OR1
  42. 470 POKE53272,(PEEK(53272)AND240)+12
  43. 480 FORI=12544TO12544+8*8-1:READA:POKEI,A:NEXT:GOSUB1080
  44. 490 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,108,206,174,234,230,108,56
  45. 500 DATA 56,108,246,250,134,222,108,56:REM BARILS
  46. 510 DATA 255,153,189,153,255,0,0,0:REM BEAM
  47. 520 DATA 56,56,16,56,84,16,56,40:REM HOMME NORMAL
  48. 530 DATA 186,186,84,56,16,16,56,40,0,0,0,56,56,16,124,170
  49. 540 SR=1025:K=55296-SR+1
  50. 550 J=SR+820:V=54296:S=54272:FORI=STOV:POKEI,0:NEXTI
  51. 560 POKEV,15:POKES+5,130:POKES+6,72
  52. 570 SR=1025:K=55296-SR+1
  53. 580 PRINT"[147]":A=0:SC=0:Z%=4
  54. 590 REM PLACER L'IMAGE
  55. 600 PRINT"[147]";:BL=80
  56. 610 FORI=1TO10:PRINTBL$;AL$;:NEXT:PRINTBL$;BL$;""
  57. 620 X=SR+39:POKES+4,33:POKES+24,15
  58. 630 FORB=1TOBL
  59. 640 R=INT(RND(X)*908)
  60. 650 POKEX+R,32:POKEX+R+K,7:POKES+1,B+10:NEXT:POKES+4,0
  61. 660 POKES+4,17:FORG=-1TO20
  62. 670 POKEX+G*40,36:POKES+1,50+(G*2):POKEX+G*40+K,5
  63. 680 POKEX+39+(G*40),36:POKES+1,0:POKEX+39+(G*40)+K,5:NEXTG:POKES+4,0
  64. 690 REM PREP POUR BOUCLES
  65. 700 E%=J:D(1)=1:D(2)=-1:D(3)=1:D(4)=-1:L=1:LM=10:RM=18:UP=5:BM=4:O=0
  66. 710 W=36:C=32:KB=197:T%=38:I%=40:LL=34:D=37:Z=245:P=128:TT%=1:TH%=3:GOSUB350
  67. 720 REM BOUCLE PRINCIPALE
  68. 730 FORX=1TOZ%:GOSUB250:IFPEEK(B%(X))>36ANDPEEK(B%(X))<40THEN910
  69. 735 IF PEEK(B%(X)+D(X))>36 AND PEEK(B%(X)+D(X))<40THEN910
  70. 737 REM   IF PEEK(B%(X)-1)>36 AND PEEK(B%(X)-1)<40THEN 910
  71. 740 GOSUB310:NEXTX
  72. 750 IF PEEK(E%)=LLTHENE%=E%+40:POKEE%+K,7:POKEE%+I%,36:POKEE%+I%+K,4:GOTO910
  73. 760 IF PEEK(E%-I%)=LLTHEN 910
  74. 770 IF PEEK(E%+I%)=LLTHEN POKE E%,C:E%=E%+80:GOTO910
  75. 780 IF LL=34THEN LL=35:GOTO800
  76. 790 LL=34
  77. 800 POKEE%,C
  78. 810 IF PEEK(KB)=LMTHENIF PEEK(E%-L)<>WTHENE%=E%-L:POKEE%,D:YG=-2:GOTO850
  79. 820 IF PEEK(KB)=RMTHEN IF PEEK(E%+L)<>WTHENE%=E%+L:POKEE%,D:YG=2:GOTO850
  80. 830 IF PEEK(KB)=BM THEN IF PEEK(E%-I%)=WTHENPOKEE%-I%,C:SC=SC-5:P=P-10
  81. 840 IF PEEK(KB)=UPTHENIFPEEK(E%-I%)<>WTHENGOSUB130:SC=SC+L+L:P=P+3:POKEE%,D
  82. 850 IF P>Z THEN P=128
  83. 860 POKEE%,D:POKES+4,17:POKES+1,40
  84. 870 IFE%<SRTHENE%=J:TT%=TT%+L:GOSUB370:IFSC>35THENZ%=RND(X*4+1)
  85. 880 IFTT%>TH%THENGOTO600
  86. 890 GOTO730
  87. 900 REM HOMME TUER
  88. 910 POKES+4,129:N=15:POKES,39:POKES+1,09:FORQ=1TO4:POKEB%(Q),32:NEXT
  89. 920 POKEE%,38:POKEE%-40,34:GOSUB1190:POKEE%,37:GOSUB1190:POKEE%,39:GOSUB1190
  90. 930 POKEE%-40,194:POKEE%,35:GOSUB1190:POKEE%+1,173:POKEE%-1,173:POKEE%+40,194
  91. 940 POKEE%-39,206:POKEE%-41,205
  92. 950 POKEE%+41,205:POKEE%+39,206:GOSUB1190
  93. 960 POKEE%-120,174:POKEE%-2,174:POKEE%+2,174:POKEE%+120,174:GOSUB1190
  94. 970 POKEE%-78,174
  95. 980 POKEE%-82,174:POKEE%+78,174:POKEE%+82,174:GOSUB1190
  96. 990 SC=SC-8:POKES+4,128:A=A+1:GOSUB370
  97. 1000 TT%=1:IF A<3 GOTO600
  98. 1010 PRINT"[147]";
  99. 1015 POKE198,0:PRINT"  PARTIE TERMINE"
  100. 1018 PRINT"              TOTAL= ";SC
  101. 1020 PRINT"FRAPPER ESPACEUR POUR NOUVELLE PARTIE"
  102. 1030 PRINT"AUTRE TOUCHE POUR TERMINER"
  103. 1040 GETYY$:IFYY$=""THEN1040
  104. 1050 IF YY$<>" "THEN PRINT"[147]":END
  105. 1060 GOTO580
  106. 1070 REM
  107. 1080 PRINT"[147]":PRINTTAB(11)"*INSTRUCTIONS*"
  108. 1090 PRINTTAB(9)"A[146]   HOMME SE DEPLACE A GAUCHE"
  109. 1095 PRINTTAB(9)"D[146]   HOMME SE DEPLACE A DROITE"
  110. 1100 PRINTTAB(9)"F3[146]   HOMME MONTE D UN NIVEAU"
  111. 1110 PRINTTAB(9)"F1[146]   DETRUIT L'ESPACE AU-DESSUS"
  112. 1120 PRINTTAB(9)"     **POINTS**"
  113. 1130 PRINTTAB(9)"   2 POUR MONTER"
  114. 1135 PRINTTAB(8)"   -5 POUR CHAQUE TIR"
  115. 1140 PRINTTAB(8)"   -8 POUR ETRE TOUCHER"
  116. 1150 PRINT"":PRINTTAB(8)"   PRESSER ESPACEUR[159]"
  117. 1160 GETXX$:IFXX$=""THEN1160
  118. 1170 RETURN
  119. 1180 REM ROUTINE POUR HOMME PERDU=TEMPS ET SON=
  120. 1190 N=N-2:IFN<0THENN=0
  121. 1200 IFPEEK(E%)=38ORPEEK(E%)=39THENFORQ=1TO50:NEXT
  122. 1210 FORQ=1TO25:NEXT:RETURN
  123.